package com.pktechan.api.base;

import java.io.Serializable;
import java.util.List;

/**
 * @program: cloudfloating
 * @description: 服务层基类实现
 * @author: qx.zhang
 * @create: 2021-03-08 09:28
 **/
public abstract class BaseServiceImpl<T> implements BaseService<T> {
    
    /**
     * 对对象进行持久化操作，如果成功则返回持久化后的ID
     *
     * @param obj
     */
    @Override
    public void save(T obj) {
        getBaseMapper().save(obj);
    }

    /**
     * 修改指定的持久化对象
     *
     * @param obj
     */
    @Override
    public void update(T obj) {
        getBaseMapper().update(obj);
    }

    /**
     * 删除指定id的持久化对象
     *
     * @param id
     */
    @Override
    public void deleteById(Serializable id) {
        getBaseMapper().deleteById(id);
    }

    /**
     * 根据ID查询对象
     *
     * @param id
     */
    @Override
    public T getById(Serializable id) {
        return getBaseMapper().getById(id);
    }

    @Override
    public List<T> getList(T obj) {
        return getBaseMapper().getList(obj);
    }
}
